Arduino |
您所在的位置:网站首页 › 春节画报怎么画 三年级下册 › Arduino |
红外接收头原理 ![]() 总所周知,人的眼睛能看到的可见光按波长从长到短排列,依次为红、橙、黄、绿、青、蓝、紫。其中红光的波长范围为0.62~0.76μm;紫光的波长范围为0.38~0.46μm。比紫光波长还短的光叫紫外线,比红光波长还长的光叫红外线。红外线遥控就是利用波长为0.76~1.5μm之间的近红外线来传送控制信号的。 CHQ1838B红外一体化接收模块,内置PIN光敏二极管和前置放大器IC,实现红外遥控信号的拾取、放大和解调,检波输出信号可以直接由微处理器解码。采用可滤除可见光干扰的环氧树脂封装,不易受环境光干扰,并能够抑制非控制信号的脉冲输出。 红外遥控信号是一连串的二进制脉冲码。为了使其在无线传输过程中免受其他红外信号的干扰,通常都是先将其调治在特定的载波频率上,然后再经红外发射二极管发射出去,而红外线接收装置则要滤除其他杂波,只接收该特定频率的信号并将其还原成二进制脉冲码,也就是解调。 目前,对于这种进行了调制的红外遥控信号,通常是采用一体化红外线接收头进行调解。一体化红外线接收头将红外发光二极管,低噪音放大器,限幅器,带通滤波器,解调器,以及整形驱动电路等集成在一起。一体化红外线接收头体积小,灵敏度高,外接元件少,抗干扰能力强,使用十分方便。 电路连接: CHQ1838B红外接收器三个引脚,正面对着自己(弧面)从左往右的引脚依次为: 信号(pin 6)GNDVCC(5v)LED连接: VCC(pin 7)GND开发板: Arduino nano代码如下: Arduino IDE 可能没有这个"#include "库文件,需自行下载。 #include //int RECV_PIN = 11;// remote pin 11 //IRrecv irrecv(RECV_PIN);// set remote pin 11 IRrecv irrecv(6); // remote pin 6 decode_results results;// requet remote value xxx void setup() { Serial.begin(9600); // In case the interrupt driver crashes on setup, give a clue // to the user what's going on. //Serial.println("Enabling IRin"); //input starting receive irrecv.enableIRIn(); // Start the receiver Serial.println("Enabled IRin"); //input receive done! pinMode(7,OUTPUT); //nano board PIN 7 is led and output } void loop() { if (irrecv.decode(&results)) // if receive remote { //Serial.println(results.value); //input receive value if(results.value==16755285) //16755285是原HEX,遥控器的按键编码 { digitalWrite(7,!digitalRead(7)); //star led } irrecv.resume(); // Receive the next value } delay(100); }修改(2018.09.18): #include //int ledPin = 7; /*注意:这里不能把引脚7定义成“int ledpin = 7”与后面这个函数“digitalWrite(ledpin,!digitalRead(ledpin));”一起使用哦!*/ //int buzzer = 8; //int RECV_PIN = 9;IRrecv irrecv(RECV_PIN);// IRrecv irrecv(9); decode_results results;// void setup() { Serial.begin(9600); Serial.println("Enabling IRin"); irrecv.enableIRIn(); // Serial.println("Enabled IRin"); pinMode(7, OUTPUT);//LED pinMode(8,OUTPUT);//buzzer } void loop() { int j=0; if (irrecv.decode(&results)) { //Serial.println(results.value, HEX); if(results.value)// { Serial.println(results.value, HEX);// digitalWrite(7,!digitalRead(7));// buzzer();// } irrecv.resume(); } delay(100); } void buzzer() { digitalWrite(8,HIGH); delay(100); digitalWrite(8,LOW); }(2018.10.18更新) 米思齐: 红外发射模块: /* 红外发射模块就是普通的LED二极管,两个引脚,也有三个引脚的; 接 线: GND PWM-3Pin(固定) VCC */ #include //IRremote.h库文件例程IRSendDemo IRsend irsend; void setup() { } void loop() { for (int i = 0; i < 3; i++) { irsend.sendSony(0xa90, 12);//Sony红外协议指令码A90 12位 这涉及很多专业知识!可以自行搜索学习! delay(40); } delay(5000); //5 second delay between each signal burst }(2020.05.08更新) Tinkercad 平台 功能: 1、遥控器按键1、2、3对应的LED灯红、黄、绿 2、对应的按键按动一下LED灯亮,再按一下灭 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |